package com.pingan.haofang.searchcloud.index.constants;

import com.pingan.haofang.framework.common.functional.lang.control.base.annotation.Value;

/**
 * 索引导入渠道设置,-1-不支持，0-JSON_RPC，1-消息队列，2-数据库SQL
 *
 * @author zhangbi617
 * @date 03/05/2017
 */
public enum IndexDataSourceType {
    NOT_SURPPORT(-1),
    JSON_RPC(0),
    MQ(1),
    SQL(2);

    private int value;

    IndexDataSourceType(int value) {
        this.value = value;
    }

    @Value
    public int getValue() {
        return value;
    }

    /**
     * 全量支持的类型
     *
     * @param type 导入类型
     * @return
     */
    public boolean isFullSupport(IndexDataSourceType type) {
        return type != null && JSON_RPC.equals(type);
    }

    /**
     * 增量是否支持
     *
     * @param type 导入类型
     * @return
     */
    public boolean isIncSupport(IndexDataSourceType type) {
        return type != null && (JSON_RPC.equals(type) || NOT_SURPPORT.equals(type));
    }
}
